Multicasting in bi-directional networks is well known. A single copy of data is sent to those clients who request it through the network. Multiple copies of data are not sent across the network as in unicasting, nor is data sent to clients who do not want it, as in broadcasting, thereby avoiding these disadvantages. Multicasting allows the deployment of multimedia applications on the network while minimizing their demand for bandwidth.
Multicast sessions are announced in advance so that clients know when a multicast is available. The announcements may comprise messages with attributes defined in the well-known internet protocol (IP) Session Description Protocol (SDP) and carried in session announcement protocol (SAP). This supplies clients with all the information they need to receive a multicast session including its name and description, the times it is active, the type of media (audio, video, text etc) and the IP addresses, ports, and protocol it uses. The announcement information is multicast to a well-publicised IP address and port where clients running a session directory tool can receive the information.
To signal that they want to receive a multicast, clients join a group to which the multicast is directed. In Ipv4, the well-known Internet Group Management Protocol (IGMPv2 and IGMPv3) is typically used for joining and leaving a multicast group, whereas in conjunction with Ipv6, the newly introduced Multicast Listener Discovery protocol (MLD and MLDv2) is typically used. Multicast groups provide several advantages. In particular, groups are dynamic so that clients can join or leave at any time, and no elaborate scheme is required to create or disband a group.
When a client joins a multicast group for listening, it initiates two processes: Firstly, a join message is sent to the client's local router in the network to inform the router that the client wants to receive data sent to the group. Secondly, the client sets its IP process to receive the multicast on the group's address and port. Multicast addresses may be Class D IP addresses ranging from 224.0.0.0 to 239.255.255.255 for IPv4 and FF . . . for IPv6. When the client wishes to stop listening to the multicast group, it unsets its IP process to receive data from the multicast group address and port, and sends a leave message to its local router.
The network's routers run protocols to create efficient multicast delivery paths through the network. There are several multicast routing protocols in common use: Distance Vector Multicast Routing Protocol (DVMRP), Multicast Open Shortest Path First Protocol (MOSPF) and Protocol-Independent Multicast (PIM). An efficient delivery path implies that multicast data travels only to those clients who want to receive it and takes the shortest path to those clients. If data travels elsewhere through the network, bandwidth goes to waste needlessly. The delivery paths in the network can be considered as a tree structure and the source of the multicast sends data through the branches of the tree. The routers are responsible for sending data down the correct branches to other routers and then to clients of the group that are waiting for data. Routers prune off branches where no data is wanted for example in response to a leave message received from a client, and also graft branches back to the tree when a new client joins the multicast group.
This approach requires bi-directional communication between the router connected to the client that wishes to join the multicast group, so that the client can send a join message to the network, but in some networks, such as certain wireless networks, the clients are connected to the network over a uni-directional link, which makes conventional IP multicasting impossible unless special steps are taken. One solution is described in our WO 03/024024 which uses a separate multicast tree for control messages which instruct the network for multicasting operations. However, the method described there requires a significant reorganisation of the network functionality i.e. the physical deployment of routers with additional functionality, and requires the tree for control messages to be set up in real time to achieve effective multicasting.
It has been proposed to datacast IP data to mobile clients over a wireless link using terrestrial DVB (DVB-T) communication techniques to provide audio, video and other data formats to mobile receivers. The DVB-T transmission scheme is essentially cellular in nature with a transmission site associated with each cell. DVB-T uses MPEG-2 transport streams and so the IP data needs to be encapsulated into the DVB transmission signals. Data streams comprising IP datagrams supplied from several sources, are encapsulated by an IP encapsulator and fed into the DVB-T network. The encapsulated IP stream is then transported to one or multiple transmission sites, which form cells of the DVB-T network, on an MPEG-2 transport stream for transmission over the air directly to the clients, or to a receiver station serving multiple clients. The MPEG-2 transport stream, from the moment it is produced by the IP encapsulator, to the moment it is received by the client or the receiver station, is unidirectional in nature.
IP packets containing the data are embedded in multi-protocol encapsulation (MPE) sections which are transported within the TS packets. For further details, reference is directed to ETSI EN 301 192 V1.3.1 (2003 January) “Digital Video Broadcasting (DVB) DVB specification for data broadcasting” Section 7. The MPE sections may also include forward error correction (FEC) information and time slicing information, by which data is conveyed discontinuously and allows the receiver to save battery power by switching off when no data is being transmitted to it.
One problem with this arrangement is that the MPEG-2 transport stream is unidirectional and that the DVB-T system does not provide a mechanism allowing the mobile clients to transmit join and leave messages back to the IP encapsulator for use in multicasting the data.
Another problem is that the encapsulated MPE sections produced by the encapsulators at the individual data sources need to be conveyed to the various cellular transmission sites for transmission, which involves the use of expensive DVB multiplexers and other DVB equipment, adding to the cost of the network.
The invention seeks to overcome these problems and disadvantages.